
package com.ruoyi.media.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 广电用户对象 media_user_wide_table
 * 
 * @author ruoyi
 * @date 2025-12-04
 */
public class MediaUser
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 终端编号 */
    private String terminalNo;

    /** 用户编号 */
    private String phoneNo;

    /** 品牌名称 */
    private String smName;

    /** 状态名称 */
    private String runName;

    /** 品牌编号 */
    private String smCode;

    /** 用户等级名称 */
    private String ownerName;

    /** 用户等级编号 */
    private String ownerCode;

    /** 状态变更时间 */
    private String runTime;

    /** 完整地址 */
    private String addressoj;

    /** 街道或小区地址 */
    private String estateName;

    /** 开户时间 */
    private String openTime;

    /** 宽带是否生效 */
    private String force;

    /** 用户标签 */
    private String userLabel;

    /** 标签类型 */
    private String labelType;

    /** 新用户标签 */
    private Integer labelNewUser;

    /** 潜在流失用户标签 */
    private Integer labelPotentialChurn;

    /** 一般用户标签 */
    private Integer labelRegularUser;

    /** 忠诚用户标签 */
    private Integer labelLoyalUser;

    /** 高价值用户标签 */
    private Integer labelHighValue;

    /** 创建时间 */
    private Date createTime;

    /** 更新时间 */
    private Date updateTime;

    // 7个标签过滤字段
    private String tvFeeLevel;
    private String broadbandFeeLevel;
    private String retentionStatus;
    private String businessBrand;
    private String tvTenureLevel;
    private String broadbandTenureLevel;
    private String feeType;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }

    public String getTerminalNo() {
        return terminalNo;
    }

    public void setTerminalNo(String terminalNo) {
        this.terminalNo = terminalNo;
    }

    public String getPhoneNo() {
        return phoneNo;
    }

    public void setPhoneNo(String phoneNo) {
        this.phoneNo = phoneNo;
    }

    public String getSmName() {
        return smName;
    }

    public void setSmName(String smName) {
        this.smName = smName;
    }

    public String getUserLabel() {
        return userLabel;
    }

    public void setUserLabel(String userLabel) {
        this.userLabel = userLabel;
    }

    public String getTvFeeLevel() {
        return tvFeeLevel;
    }

    public void setTvFeeLevel(String tvFeeLevel) {
        this.tvFeeLevel = tvFeeLevel;
    }

    public String getBroadbandFeeLevel() {
        return broadbandFeeLevel;
    }

    public void setBroadbandFeeLevel(String broadbandFeeLevel) {
        this.broadbandFeeLevel = broadbandFeeLevel;
    }

    public String getRetentionStatus() {
        return retentionStatus;
    }

    public void setRetentionStatus(String retentionStatus) {
        this.retentionStatus = retentionStatus;
    }

    public String getBusinessBrand() {
        return businessBrand;
    }

    public void setBusinessBrand(String businessBrand) {
        this.businessBrand = businessBrand;
    }

    public String getTvTenureLevel() {
        return tvTenureLevel;
    }

    public void setTvTenureLevel(String tvTenureLevel) {
        this.tvTenureLevel = tvTenureLevel;
    }

    public String getBroadbandTenureLevel() {
        return broadbandTenureLevel;
    }

    public void setBroadbandTenureLevel(String broadbandTenureLevel) {
        this.broadbandTenureLevel = broadbandTenureLevel;
    }

    public String getFeeType() {
        return feeType;
    }

    public void setFeeType(String feeType) {
        this.feeType = feeType;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("terminalNo", getTerminalNo())
            .append("phoneNo", getPhoneNo())
            .toString();
    }
}
